package top.infopub.mgr.hr.service;

import java.util.List;

import com.github.pagehelper.Page;

import org.apache.ibatis.annotations.Param;
import top.infopub.model.hr.PostGroupInfo;
import top.infopub.model.hr.PostInfo;
import top.infopub.generic.GenericService;

public interface PostInfoService extends GenericService<PostInfo, String> {

    /**
     * 根据部门id查询岗位记录
     * @param deptId 部门id
     * @return
     * @see
     */
    List<PostInfo> getPostByDeptId(String deptId);

    /**
     * 新增/编辑岗位
     * @param postInfo
     * @see
     */
    void save(PostInfo postInfo);

    /**
     * 根据条件查询岗位记录
     * @param page
     * @param postInfo
     * @return
     * @see
     */
    Page<PostInfo> selectPageByDomainWhere(Page<PostInfo> page, PostInfo postInfo);

    /**
     * 根据名称和部门id查询是否存在
     * @param postName 岗位名称
     * @param deptId 部门id
     * @param id 主键id
     * @return
     * @see
     */
    List<PostInfo> selectByPostNameAndId(String postName, String deptId, String id);

    /**
     * 根据角色组查询岗位列表
     * @param page
     * @param groupId
     * @return
     */
     Page<PostInfo> selectPageByGroupId(Page<PostInfo> page, String groupId,String roleType);


     List<PostInfo> selectPostByName(String postName, String type);

    /**
     * 查询审批角色组详情
     * @param groupId
     * @return
     */
     List<PostGroupInfo> selectPostGroupInfo(String groupId, String roleType);

}
